The present invention relates to a data conversion apparatus, and more particularly, to an apparatus for converting eight-bit source data into ten-bit modulation data in accordance with an input flag.
In a digital audio processing system, an audio signal is generally sampled at a rate of 44.1 MHz and then quantized into weight-bit digital source data. The digital source data is then converted into modulation data for compatibility with various recording media. For example, the eight-bit source data of an audio signal recorded onto tape, e.g., a digital compact cassette, is converted into ten-bit modulation data having a bit arrangement Wherein the number of logic "1's" is limited to four, five or six.
Here, each of the 256 possibilities of eight-bit source data is converted into one of two types of ten-bit modulation data, as indicated by an output flag, depending whether an input flag is at a logic "0" or "1". The input flag represents the relationship been the number of logic "1's" and the number of logic "0's" among the converted ten bits of modulation data, with respect to a previous data conversion. For example, an input flag of "0" represents the case where the number of "1" bits was less than or equal to the number of "0" bits present in the immediately preceding modulation data, and an input flag of "1" represents the case when the number of "1" bits was greater than or equal to the number of "0" bits present in the immediately preceding modulation data value.
Here, the input flag is equal to the output flag of the immediately preceding modulation data. Accordingly, for the sake of the balance between the number of "1" bits and the number of "0 bits, the eight-bit source data is converted into ten-bit modulation data having five or six bit "1's" when the input flag is "0" and into that having four or five bit "1's" when the input flag is "1."
Tables 1 through 6 show a recommended conversion of eight-bit source data into ten-bit modulation data and the corresponding output flags, based on the logic state of the input flag.
TABLE 1 ______________________________________ input flag = 0 input flag = 1 source data modulation modulation output (eight bits) data (ten bits) output flag data (ten bits) flag ______________________________________ 00000000 0010101011 0 0010101011 1 00000001 0010101101 0 0010101101 1 00000010 0010101110 0 0010101110 1 00000011 0010110011 0 0010110011 1 00000100 0010110101 0 0010110101 1 00000101 0010110110 0 0010110110 1 00000110 0010111001 0 0010111001 1 00000111 0010111010 0 0010111010 1 00001000 0011001011 0 0011001011 1 00001001 0011001101 0 0011001101 1 00001010 0011001110 0 0011001110 1 00001011 0011010011 0 0011010011 1 00001100 0011010101 0 0011010101 1 00001101 0011010110 0 0011010110 1 00001110 0011011001 0 0011011001 1 00001111 0011011010 0 0011011010 1 00010000 0011100011 0 0011100011 1 00010001 0011100101 0 0011100101 1 00010010 0011100110 0 0011100110 1 00010011 0011101001 0 0011101001 1 00010100 0011101010 0 0011101010 1 00010101 0100101011 0 0100101011 1 00010110 0100101101 0 0100101101 1 00010111 0100101110 0 0100101110 1 00011000 0100110011 0 0100110011 1 00011001 0100110101 0 0100110101 1 00011010 0100110110 0 0100110110 1 00011011 0100111001 0 0100111001 1 00011100 0100111010 0 0100111010 1 00011101 0101001011 0 0101001011 1 00011110 0101001101 0 0101001101 1 00011111 0101001110 0 0101001110 1 00100000 0101010011 0 0101010011 1 00100001 0101010101 0 0101010101 1 00100010 0101010110 0 0101010110 1 00100011 0101011001 0 0101011001 1 00100100 0101011010 0 0101011010 1 00100101 0101100011 0 0101100011 1 00100110 0101100101 0 0101100101 1 00100111 0101100110 0 0101100110 1 00101000 0101101001 0 0101101001 1 00101001 0101101010 0 0101101010 1 00101010 0110001011 0 0110001011 1 00101011 0110001101 0 0110001101 1 ______________________________________
TABLE 2 ______________________________________ input flag = 0 input flag = 1 source data modulation modulation output (eight bits) data (ten bits) output flag data (ten bits) flag ______________________________________ 00101100 0110001110 0 0110001110 1 00101101 0110010011 0 0110010011 1 00101110 0110010101 0 0110010101 1 00101111 0110010110 0 0110010110 1 00110000 0110011001 0 0110011001 1 00110001 0110011010 0 0110011010 1 00110010 0110100011 0 0110100011 1 00110011 0110100101 0 0110100101 1 00110100 0110100110 0 0110100110 1 00110101 0110101001 0 0110101001 1 00110110 0110101010 0 0110101010 1 00110111 1000101011 0 1000101011 1 00111000 1000101101 0 1000101101 1 00111001 1000101110 0 1000101110 1 00111010 1000110011 0 1000110011 1 00111011 1000110101 0 1000110101 1 00111100 1000110110 0 1000110110 1 00111101 1000111001 0 1000111001 1 00111110 1000111010 0 1000111010 1 00111111 1001001011 0 1001001011 1 01000000 1001001101 0 1001001101 1 01000001 1001001110 0 1001001110 1 01000010 1001010011 0 1001010011 1 01000011 1001010101 0 1001010101 1 01000100 1001010110 0 1001010110 1 01000101 1001011001 0 1001011001 1 01000110 1001011010 0 1001011010 1 01000111 1001100011 0 1001100011 1 01001000 1001100101 0 1001100101 1 01001001 1001100110 0 1001100110 1 01001010 1001101001 0 1001101001 1 01001011 1001101010 0 1001101010 1 01001100 1010001011 0 1010001011 1 01001101 1010001101 0 1010001101 1 01001110 1010001110 0 1010001110 1 01001111 1010010011 0 1010010011 1 01010000 1010010101 0 1010010101 1 01010001 1010010110 0 1010010110 1 01010010 1010011001 0 1010011001 1 01010011 1010011010 0 1010011010 1 01010100 1010100011 0 1010100011 1 01010101 1010100101 0 1010100101 1 01010110 1010100110 0 1010100110 1 01010111 1010101001 0 1010101001 1 ______________________________________
TABLE 3 ______________________________________ input flag = 0 input flag = 1 source data modulation modulation output (eight bits) data (ten bits) output flag data (ten bits) flag ______________________________________ 01011000 1010101010 0 1010101010 1 01011001 0010101111 1 0000101011 0 01011010 0100101111 1 0000101101 0 01011011 1000101111 1 0000101110 0 01011100 0011001111 1 0000110011 0 01011101 1001110001 0 0000110101 0 01011110 1001011100 0 0000110110 0 01011111 0110001111 1 0000111001 0 01100000 1010001111 1 0000111010 0 01100001 1001101100 0 0000111100 0 01100010 0010110111 1 0001001011 0 01100011 0100110111 1 0001001101 0 01100100 1000110111 1 0001001110 0 01100101 0011010111 1 0001010011 0 01100110 0101010111 1 0001010101 0 01100111 1001010111 1 0001010110 0 01101000 0110010111 1 0001011001 0 01101001 1010010111 1 0001011010 0 01101010 1100010111 1 0001011100 0 01101011 0011100111 1 0001100011 0 01101100 0101100111 1 0001100101 0 01101101 1001100111 1 0001100110 0 01101110 0110100111 1 0001101001 0 01101111 1010100111 1 0001101010 0 01110000 1100100111 1 0001101100 0 01110001 0111000111 1 0001110001 0 01110010 1011000111 1 0001110010 0 01110011 1101000111 1 0001110100 0 01110100 0110110001 0 0001111000 0 01110101 0010111011 1 0010001011 0 01110110 0100111011 1 0010001101 0 01110111 1000111011 1 0010001110 0 01111000 0011011011 1 0010010011 0 01111001 0101011011 1 0010010101 0 01111010 1001011011 1 0010010110 0 01111011 0110011011 1 0010011001 0 01111100 1010011011 1 0010011010 0 01111101 1100011011 1 0010011100 0 01111110 0011101011 1 0010100011 0 01111111 0101101011 1 0010100101 0 10000000 1001101011 1 0010100110 0 10000001 0110101011 1 0010101001 0 10000010 1010101011 1 0010101010 0 10000011 1100101011 1 0010101100 0 ______________________________________
TABLE 4 ______________________________________ input flag = 0 input flag = 1 source data modulation modulation output (eight bits) data (ten bits) output flag data (ten bits) flag ______________________________________ 10000100 0111001011 1 0010110001 0 10000101 1011001011 1 0010110010 0 10000110 1101001011 1 0010110100 0 10000111 1100001011 0 0010111000 0 10001000 0011110011 1 0011000011 0 10001001 0101110011 1 0011000101 0 10001010 1001110011 1 0011000110 0 10001011 0110110011 1 0011001001 0 10001100 1010110011 1 0011001010 0 10001101 1100110011 1 0011001100 0 10001110 0111010011 1 0011010001 0 10001111 1011010011 1 0011010010 0 10010000 1101010011 1 0011010100 0 10010001 1100010011 0 0011011000 0 10010010 0111100011 1 0011100001 0 10010011 1011100011 1 0011100010 0 10010100 1101100011 1 0011100100 0 10010101 1100100011 0 0011101000 0 10010110 0010111101 1 0100001011 0 10010111 0100111101 1 0100001101 0 10011000 1000111101 1 0100001110 0 10011001 0011011101 1 0100010011 0 10011010 0101011101 1 0100010101 0 10011011 1001011101 1 0100010110 0 10011100 0110011101 1 0100011001 0 10011101 1010011101 1 0100011010 0 10011110 1100011101 1 0100011100 0 10011111 0011101101 1 0100100011 0 10100000 0101101101 1 0100100101 0 10100001 1001101101 1 0100100110 0 10100010 0110101101 1 0100101001 0 10100011 1010101101 1 0100101010 0 10100100 1100101101 1 0100101100 0 10100101 0111001101 1 0100110001 0 10100110 1011001101 1 0100110010 0 10100111 1101001101 1 0100110100 0 10101000 1100001101 0 0100111000 0 10101001 0011110101 1 0101000011 0 10101010 0101110101 1 0101000101 0 10101011 1001110101 1 0101000110 0 10101100 0110110101 1 0101001001 0 10101101 1010110101 1 0101001010 0 10101110 1100110101 1 0101001100 0 10101111 0111010101 1 0101010001 0 ______________________________________
TABLE 5 ______________________________________ input flag = 0 input flag = 1 source data modulation modulation output (eight bits) data (ten bits) output flag data (ten bits) flag ______________________________________ 10110000 1011010101 1 0101010010 0 10110001 1101010101 1 0101010100 0 10110010 1100010101 0 0101011000 0 10110011 0111100101 1 0101100001 0 10110100 1011100101 1 0101100010 0 10110101 1101100101 1 0101100100 0 10110110 1100100101 0 0101101000 0 10110111 0011110001 0 0110000011 0 10111000 0101111001 1 0110000101 0 10111001 1001111001 1 0110000110 0 10111010 0110111001 1 0110001001 0 10111011 1010111001 1 0110001010 0 10111100 1100111001 1 0110001100 0 10111101 0111011001 1 0110010001 0 10111110 1011011001 1 0110010010 0 10111111 1101011001 1 0110010100 0 11000000 1100011001 0 0110011000 0 11000001 0111101001 1 0110100001 0 11000010 1011101001 1 0110100010 0 11000011 1101101001 1 0110100100 0 11000100 1100101001 0 0110101000 0 11000101 0010111110 1 1000001011 0 11000110 0100111100 0 1000001101 0 11000111 1000111100 0 1000001110 0 11001000 0011011110 1 1000010011 0 11001001 0101011110 1 1000010101 0 11001010 1001011110 1 1000010110 0 11001011 0110011110 1 1000011001 0 11001100 1010011110 1 1000011010 0 11001101 1100011110 1 1000011100 0 11001110 0011101110 1 1000100011 0 11001111 0101101110 1 1000100101 0 11010000 1001101110 1 1000100110 0 11010001 0110101110 1 1000101001 0 11010010 1010101110 1 1000101010 0 11010011 1100101110 1 1000101100 0 11010100 0111001110 1 1000110001 0 11010101 1011001110 1 1000110010 0 11010110 1101001110 1 1000110100 0 11010111 1100001110 0 1000111000 0 11011000 0011110110 1 1001000011 0 11011001 0101110110 1 1001000101 0 11011010 1001110110 1 1001000110 0 11011011 0110110110 1 1001001001 0 ______________________________________
TABLE 6 ______________________________________ input flag = 0 input flag = 1 source data modulation modulation output (eight bits) data (ten bits) output flag data (ten bits) flag ______________________________________ 11011100 1010110110 1 1001001010 0 11011101 1100110110 1 1001001100 0 11011110 0111010110 1 1001010001 0 11011111 1011010110 1 1001010010 0 11100000 1101010110 1 1001010100 0 11100001 1100010110 0 1001011000 0 11100010 0111100110 1 1001100001 0 11100011 1011100110 1 1001100010 0 11100100 1101100110 1 1001100100 0 11100101 1100100110 0 1001101000 0 11100110 0011110010 0 1010000011 0 11100111 0101111010 1 1010000101 0 11101000 1001111010 1 1010000110 0 11101001 0110111010 1 1010001001 0 11101010 1010111010 1 1010001010 0 11101011 1100111010 1 1010001100 0 11101100 0111011010 1 1010010001 0 11101101 1011011010 1 1010010010 0 11101110 1101011010 1 1010010100 0 11101111 1100011010 0 1010011000 0 11110000 0111101010 1 1010100001 0 11110001 1011101010 1 1010100010 0 11110010 1101101010 1 1010100100 0 11110011 1100101010 0 1010101000 0 11110100 0101111000 0 0001111010 1 11110101 1101101000 0 0001011011 1 11110110 1011101000 0 0001011101 1 11110111 0111101000 0 0001011110 1 11111000 1101011000 0 0001101011 1 11111001 1011011000 0 0001101101 1 11111010 0111011000 0 0001101110 1 11111011 1100111000 0 0001110011 1 11111100 1010111000 0 0001110101 1 11111101 0110111000 0 0001110110 1 11111110 1001111000 0 0001111001 1 11111111 1101100100 0 0010011011 1 ______________________________________
A data conversion look-up table has been used to perform such data conversion. The data conversion look-up table is constituted by a memory addressed by an input flag and source data. Here, each address consists of nine bits (eight bits of source data plus one bit for the input flag). The ten-bit modulation data and one bit output flag are stored in the respective addresses of the memory.
While, as described above, the conventional data conversion look-up table can be easily realized, a relatively large (2.sup.9 11) memory is required. Thus, the semiconductor chip for realizing such a function becomes excessively large, which increases the manufacturing cost thereof and makes it difficult for the data conversion look-up table to be manufactured in a single-chip package together with other function circuits.